pub mod la {
    pub fn show() -> i32 {
        let tx = |y: i32| y + 2;
        let move_x = |y: i32| {
            print!("y={}", y);
            y + 2
        };
        println!("this is  lamb show");
        return tx(2) + move_x(3);
    }

    pub fn lns() {
        let x: Result<i32, bool> = Err(false);
        let y: Result<i32, &str> = Ok(1);
        let z: Result<i32, &str> = Err("error to show");
        if z.is_err() {
            print!("z  is error {:?}", z.err().unwrap());
        }
    }

    pub fn display_student(t: StudentType) {
        match t {
            StudentType::ONE => {
                println!("one to show ");
            }
            StudentType::TWO => {
                println!("two to show ");
            }
            StudentType::THREE => {
                println!("three to show ");
            }

            (_) => {
                println!("nothing to show ");
            }
        }
        lns();
        dis_ok();
    }

    pub fn dis_ok() {
        let c = b"javac world";
        let d = 'a';

        for i in 0..c.len() {
            print!("[{}] => {} ", i, c[i] as char);
            let x = c[i].to_string();
            println!("x={}", x);
        }

        let s: String = "java home".parse().unwrap();
        print!("s={}", s);
    }

    pub enum StudentType {
        ONE = 1,
        TWO = 2,
        THREE = 3,
    }
}
